package com.cloudschool.content.service;

import com.cloudschool.content.model.dto.CoursePreviewDto;
import com.cloudschool.content.model.po.CoursePublish;

import java.io.File;

/**
 * @author chenhong
 * @version 1.0
 * @description 课程预览、发布接口
 * @date 2023/3/16 17:26
 */
public interface CoursePublishService {

    /**
     * @param courseId
     * @return com.cloudschool.content.model.dto.CoursePreviewDto
     * @description 获取课程预览信息
     * @author chenhong
     * @date 2023/3/16 17:27
     */
    public CoursePreviewDto getCoursePreviewInfo(Long courseId);


    /**
     * @param companyId
     * @param courseId
     * @return void
     * @description 提交课程审核
     * @author chenhong
     * @date 2023/3/17 16:40
     */
    public void commitAudit(Long companyId, Long courseId);


    /**
     * @param companyId
     * @param courseId
     * @return void
     * @description 课程发布接口
     * @author chenhong
     * @date 2023/3/17 16:51
     */
    public void publish(Long companyId, Long courseId);


    /**
     * @param courseId
     * @return java.io.File
     * @description 课程静态化
     * @author chenhong
     * @date 2023/3/18 10:49
     */
    public File generateCourseHtml(Long courseId);

    /**
     * @param courseId
     * @param file
     * @return void
     * @description 上传课程静态化页面
     * @author chenhong
     * @date 2023/3/18 10:50
     */
    public void uploadCourseHtml(Long courseId, File file);

    CoursePublish getCoursePublish(Long courseId);
}
